Communication system, communication method, program and information storage medium

ABSTRACT

Methods and apparatus provide for a user to feel the presence of other users existing in the same daily living area without using short-distance wireless communication. The system includes a position coordinate receiving section for obtaining positions from a plurality of user terminals, and a nearby user distributing section for selecting, under the condition that the nearby user distributing section obtains a position of a specified user terminal, one or more of the plurality of user terminals corresponding to the position obtained from the specified user terminal and the positions obtained from the plurality of user terminals and providing the specified user terminal with information on the selected one or more of the plurality of user terminals.

CROSS REFERENCE TO RELATED APPLICATIONS

This is a continuation application of U.S. patent application Ser. No.13/807,800, accorded a filing date of Feb. 25, 2013, which is a nationalstage application of International Application No. PCT/JP2011/064898,filed Jun. 29, 2011, the entire disclosures of which are herebyincorporated by reference.

TECHNICAL FIELD

The present invention relates to a communication system, a communicationmethod, a program and an information storage medium.

BACKGROUND ART

Conventional game systems, in which game terminals within a relativelyshort distance from each other communicate wirelessly to directlyexchange game data, are known. With such game systems, it could happenthat users of the game terminals incidentally exchange game data whilepassing each other, and thus strangers are allowed to exchange game datawith less stress. In addition, the users can feel other users existingin the same daily living area.

SUMMARY OF INVENTION Technical Problem

The present invention departs from this conventional system, providing acommunication system, a communication method, a program and aninformation storage medium for allowing users to feel other usersexisting in the same living area without using short-distance wirelesscommunication.

Solution to Problem

In order to solve the above-mentioned problem, according to the presentinvention, there is provided a communication system including a positionobtaining unit that obtains positions from a plurality of userterminals, a user terminal selecting unit that selects, under thecondition that the user terminal selecting unit obtains a position of aspecified user terminal, one or more of the plurality of user terminalscorresponding to the position obtained from the specified user terminaland the positions obtained from the plurality of user terminals, and aninformation providing unit that provides the specified user terminalwith information on the selected one or more of the plurality of userterminals.

According to the present invention, there is provided a communicationmethod including obtaining positions from a plurality of user terminals,selecting, under the condition that a position of a specified userterminal is obtained, one or more of the plurality of user terminalscorresponding to the position obtained from the specified user terminaland the positions obtained from the plurality of user terminals, andproviding the specified user terminal with information on the selectedone or more of the plurality of user terminals.

According to the present invention, there is provided a program forcausing a computer to execute obtaining positions from a plurality ofuser terminals, selecting, under the condition that a position of aspecified user terminal is obtained, one or more of the plurality ofuser terminals corresponding to the position obtained from the specifieduser terminal and the positions obtained from the plurality of userterminals, and providing the specified user terminal with information onthe selected one or more of the plurality of user terminals.

According to the present invention, there is provided an informationstorage medium for storing a program for causing a computer to executeobtaining positions from a plurality of user terminals, selecting, underthe condition that a position of a specified user terminal is obtained,one or more of the plurality of user terminals corresponding to theposition obtained from the specified user terminal and the positionsobtained from the plurality of user terminals; and providing thespecified user terminal with information on the selected one or more ofthe plurality of user terminals.

BRIEF DESCRIPTION OF DRAWINGS

In the accompanying drawings:

FIG. 1 is an overall configuration diagram of a communication systemaccording to an embodiment of the present invention;

FIG. 2 is a diagram illustrating the external appearance of a userterminal;

FIG. 3 is a diagram illustrating an example of a travel route image;

FIG. 4 is a diagram illustrating an example of a friend image;

FIG. 5 is a diagram illustrating an example of a ranking image;

FIG. 6 is a diagram illustrating an example of a title profile image;

FIG. 7 is a diagram illustrating an example of a radar image;

FIG. 8 is a function block diagram of the user terminal;

FIG. 9 is a diagram illustrating a configuration of an other-userinformation providing section;

FIG. 10 is a diagram schematically illustrating data in a positioncoordinate storage section;

FIG. 11 is a diagram schematically illustrating data in a gameperformance data storage section;

FIG. 12 is a function block diagram of a user position managementserver;

FIG. 13 is a diagram schematically illustrating data in an area-basedtitle ID storage section;

FIG. 14 is a diagram schematically illustrating data in an area-baseduser ID storage section; and

FIG. 15 is a diagram schematically illustrating data in a userinformation storage section.

DESCRIPTION OF EMBODIMENTS

An embodiment of the present invention is described in detail below withreference to the drawings.

FIG. 1 is an overall configuration diagram of a communication systemaccording to the embodiment of this invention. As illustrated in FIG. 1,the communication system includes a user position management server 12,an information server 14, and a plurality of user terminals (informationprocessing devices) 16 which are connected to a computer communicationnetwork 10 such as the Internet. The user position management server 12and the information server 14 are constituted mainly of known servercomputers, for example. Each user terminal 16 is a portable computergame system driven on a battery, and has a touch screen 16 a on thefront as illustrated in an exterior view of FIG. 2. The user terminal 16also has, as built-in components, a positioning unit 16 b, which usesGlobal Positioning System (GPS) to calculate the position (the latitudeand longitude) of the user terminal 16, a cellular phone communicationunit 16 c, which communicates data over a cellular phone network, and awireless LAN communication unit 16 d, which communicates data over awireless LAN. The user terminal 16 selectively uses one of the cellularphone communication unit 16 c and the wireless LAN communication unit 16d that is suitable for the communication environment to connect to thecomputer communication network 10, and communicates data with the userposition management information server 12 and the information server 14.

The user terminal 16 repeatedly calculates its own position with the useof satellite signals and holds the results of the positioning. The userterminal 16 also holds data that indicates game program executionperformance. The positioning results and the game execution performancedata are uploaded to the user position management server 12 manuallywhen the user operates the user terminal 16 to do so, or automaticallyat regular time intervals. The user position management server 12 holdspositioning results and execution performance data that are uploadedfrom many user terminals 16 in this manner. Each user terminal 16displays on the touch screen 16 a a travel route image of the userterminal 16 as shown in FIG. 3 based on the information held on the userposition management server 12 and the positioning results held byitself. The travel route image has a shape that is longer in height thanin width, and only a part of the travel route image which is set to adisplay range is displayed on the touch screen 16 a. The user can movethe display range by making a given operation on the touch screen 16 a.

As shown in FIG. 3, the lower area of the travel route image includesimages of the travel route of the user terminal 16. As described above,the user terminal 16 repeatedly calculates its own position and holdsthe calculated positions. The lower area of the travel route imagedisplays address letter strings 20 each indicating a held position and acalculating date/time 22, in the order that the positions have beencalculated. Specifically, newer calculation results are displayed at thetop. At this time, although the positioning unit 16 b repeatedlycalculates the position of its own user terminal 16, the user terminal16 keeps a record of a newly calculated position only when the newlycalculated position is at a given distance (for example, 2 km) or morefrom the latest position that has been held in the user terminal 16. Theuser terminal 16 does not keep a record of a newly calculated positionwhen the distance between the newly calculated position and the latestheld position is shorter than the given distance. As such, the travelroute image does not display two address letter strings 20 in theup-down direction, if the position of one of the address letter strings20 is less than the given distance from the position of the otheraddress letter string. This way, the travel route image displays onlysignificant travels and therefore is easy to comprehend. In addition,because displaying insignificant information is prevented, the touchscreen 16 a can be used efficiently.

A plurality of small images 24 are displayed around each calculatingdate/time 22 in the lower area of the travel route image. More smallimages 24 are displayed the greater the number of other user terminals16 that have uploaded the same position to the user position managementserver 12. This enables the user to grasp at a glance whether or notmany of other users carrying the user terminals 16 have been at eachposition. A title 26 of a featured game program is also displayed ineach calculating date/time 22.

On the lower area of the travel route image, when a user terminal 16 ofanother friend user has calculated and uploaded to the user positionmanagement server 12 the same position as the position calculated anduploaded to the user position management server 12 by the user terminal16, the user terminal 16 displays a message 28 such as “found thefootprints of your friend A!” to indicate that the friend has been atthe same position.

On an upper left area 30 of the travel route image, the user terminal 16displays a total number of the users who have calculated and uploaded tothe user position management server the same positions as calculated anduploaded to the user position management server 12 by the user terminal16. In addition, on an upper right area 32, there is displayedinformation relating to other users who are friends of the user.

FIG. 4 illustrates a friend image which is displayed on the touch screen16 a when the upper right area 32 is tapped by the user in the travelroute image of FIG. 3. As shown in FIG. 4, an avatar image 36 of eachfriend and an item of latest information 34 about the friend aredisplayed on the lower area of the friend image. The latest information34 is received from, for example, an information server 14. The friendimage also has a shape that is longer in height than in width, and onlya part of the friend image which is set to a display range is displayedon the touch screen 16 a. The user can move the display range by makinga given operation on the touch screen 16 a.

FIG. 5 illustrates a ranking image which is displayed on the touchscreen 16 a when the user taps the address letter string 20 in thetravel route image of FIG. 3. As illustrated in FIG. 5, an upper area ofthe ranking image displays an address letter string 20 tapped by theuser and a calculating date/time 22 of the position indicated by thetapped address letter string 20. A lower area of the ranking imagedisplays the titles of game programs that have been played on the userterminals 16 from which the position indicated by the address letterstring 20 have been uploaded to the user position management server 12.The game titles are displayed in descending order of the number of theuser terminals 16 on which the game programs having those titles havebeen played. Displayed to the left of each title is the number of userterminals 16 on which the game program having the title has been played.The ranking image, too, has a shape that is longer in height than inwidth, and only a part of the ranking image which is set to a displayrange is displayed on the touch screen 16 a. The user can move thedisplay range by making a given operation on the touch screen 16 a.

FIG. 6 illustrates a title profile image which is displayed on the touchscreen 16 a when one of game programs is tapped in the ranking image ofFIG. 5 or one of the titles 26 is tapped in the travel route image ofFIG. 3. An upper area of the title profile image contains a title image42 of the game program. A lower area of the title profile image containsan information field 44 which shows evaluations given by other users onthe game program and other users' play status of the game program. Thetitle image 42 or information on the information field 44 is alsoreceived from, for example, the information server 14. The title profileimage, too, has a shape that is longer in height than in width, and onlya part of the ranking image which is set to a display range is displayedon the touch screen 16 a. The user can move the display range by makinga given operation on the touch screen 16 a.

FIG. 7 illustrates a radar image which is displayed on the touch screen16 a when the address letter string 20 is tapped in the ranking image ofFIG. 5. A avatar image 50 which represents the user in question isdisplayed at the center of the radar image, and avatar images 52 ofother users whose privacy settings are set to “public” are displayedaround the avatar image 50. The radar image also displays small images54, which suggest the presence of other users whose privacy settings areset to “private”, around the avatar image 50. The display position ofeach of the avatar images 50 and the avatar images on the touch screen16 a is determined based on a position actually calculated by thepositioning unit 16 b. In other words, based on a position calculated bythe positioning unit 16 b and uploaded to the user position managementserver 12, the user terminal 16 calculates the positions of other“public” users relative to its own position and, based on the calculatedrelative positions, determines the display positions of the avatarimages 52 on the touch screen 16 a. The display positions of the smallimages 54 on the touch screen 16 a, on the other hand, are determined byrandom numbers.

The configuration of the communication system described above isdescribed in more detail. FIGS. 8 and 9 are function block diagrams ofeach user terminal 16. As illustrated in FIG. 8, the user terminal 16includes as functional components a positioning section 60, a positioncoordinate storage section 62, a position coordinate transmittingsection 64, an application executing section 66, a game performancestorage section 68, an other-user information providing section 70, andan item communication section 72. The other-user information providingsection 70 includes, as illustrated in FIG. 9, a travel route imagegenerating section 70 a, a friend image generating section 70 b, aranking image generating section 70 c, a radar image generating section70 d, a title profile image generating section 70 e. These functioncomponents are implemented by executing a program according to theembodiment of the present invention on the user terminal 16, which is acomputer game system. This program may be downloaded from anothercomputer via the computer communication network 10, or may be stored ina computer-readable information storage medium such as a CD-ROM or aDVD-ROM to be installed in the user terminal 16. In the latter case, theuser terminal 16 has a built-in or external medium reading device forreading the program out of the medium.

The positioning section 60 is constituted mainly of the positioning unit16 b. The positioning section 60 periodically (for example, every thirtyminutes) activates the positioning unit 16 b to receive satellitesignals (GPS signals) and generate position coordinates (latitude andlongitude) from the received signals. The positioning section 60 mayactivate the positioning unit 16 b to receive satellite signals andgenerate position coordinates from the received signals also when theuser gives via the touch screen 16 a an explicit instruction to performpositioning. Alternatively, the positioning section 60 may obtain theposition coordinates of the user terminal 16 based on identificationinformation and other types of necessary information of a wirelessaccess point with which the wireless LAN communication unit 16 d cancommunicate. For instance, a not-shown server stores in advanceidentification information of a wireless access point in associationwith position coordinates, and the positioning section 60 transmitsidentification information to the server to obtain position coordinatesthat are associated with the identification information. The positioningsection 60 may transmit, to the server, identification information of aplurality of wireless access points and the intensity of radio wavesfrom each wireless access point. The server in this case performsweighting based on the radio wave intensity, combines the positioncoordinates of the wireless access points to calculate the positioncoordinate of the user terminal 16, and returns the calculatedcoordinates to the positioning section 60.

Similarly, the position coordinates of the user terminal 16 may beobtained based on identification information and other types ofnecessary information of a cellular phone base station with which thecellular phone communication unit 16 c can communicate. Instead of thepositioning section 60 obtaining the position coordinates of the userterminal 16 and transmitting the obtained coordinates to the userposition management server 12, the user position management server 12may obtain position coordinates indicated by identification informationand other types of necessary information of a wireless access point or acellular phone base station that are transmitted from the positioningsection 60.

As illustrated in FIG. 10, the position coordinate storage section 62stores a given number of (for example, ten) position coordinate sets andcalculating dates/times of the position coordinates in association witheach other. The positioning section 60 reads position coordinates storedlast in the position coordinate storage section 62 each time newposition coordinates are generated, and calculates the distance betweenthe newly generated position coordinates and the read positioncoordinates. When the calculated distance is equal to or more than agiven distance (for example, 2 km), the position coordinate storagesection 62 stores the newly generated position coordinates along withthe calculating date/time of the position coordinates. At this point,position coordinates that have been stored longer than a given number ofdays (seven days, for example) are deleted along with the calculatingdate/time of the expired position coordinates. If the positioncoordinate storage section 62 is storing the given number of positioncoordinate sets in association with their calculating dates/times andnone of the position coordinate sets have been stored longer than thegiven number of days, the oldest position coordinates and theircalculating date/time are deleted in order to store newly generatedposition coordinates and their calculating date/time instead. When thedistance between the newly generated position coordinates and the readposition coordinates is less than the given distance, on the other hand,the new position coordinates are discarded instead of being stored inthe position coordinate storage section 62.

The application executing section 66 executes an application programsuch as a game program. The application program may be downloaded fromanother computer via the computer communication network 10 or may bestored in a computer-readable information storage medium such as aCD-ROM or a DVD-ROM to be installed in the user terminal 16.

As illustrated in FIG. 11, the game performance storage section 68stores a title ID, a viewing level, a total play time, and a last playdate/time in association with each other for each of a given number of(for example, five) game programs that have been executed lately by theapplication executing section 66. The title ID is information foridentifying each game program. The total play time indicates the totallength of time the game program identified by the title ID has beenplayed. The viewing level is information indicating how enthusiastic theuser is about the game program which is calculated from e.g., the totalplay time. The last play date/time indicates the date/time (activationdate/time or shutdown date/time) when the game program has been playedthe last time.

The position coordinate transmitting section 64 uses the cellular phonecommunication unit 16 c or the wireless LAN communication unit 16 d totransmit, to the user position management server 12, the plurality ofposition coordinate sets and their calculating dates/times stored in theposition coordinate storage section 62, and the title IDs, viewinglevels, and total play times of the given number of game programs storedin the game performance storage section 68. This transmission may beexecuted when the user gives through the touch screen 16 a an explicitinstruction to transmit. At this time, it is preferred if the positioncoordinate transmitting section 64 displays a plurality of positioncoordinate sets and their calculating dates/times stored in the positioncoordinate storage section 62 on the touch screen 16 a to check whetheror not the user wishes to transmit the displayed position coordinatesets and calculating dates/times. The position coordinate transmittingsection 64 may be further capable of removing position coordinate setsand their calculating dates/times that the user does not wish totransmit and transmitting only the rest to the user position managementserver 12. The user may set the user terminal 16 to omit this checking.In this case, a plurality of position coordinate sets and theircalculating dates/times stored in the position coordinate storagesection 62 are transmitted automatically and periodically (for example,once a day). The other-user information providing section 70 and theitem communication section 72 are described later.

FIG. 12 is a function block diagram of the user position managementserver 12. As illustrated in FIG. 21, the user position managementserver 12 includes as functional components a position coordinatereceiving section 80, an area-based title ID storage section 82, anarea-based user ID storage section 84, a user information storagesection 86, a ranking generating section 88, an area-based rankingstorage section 90, a ranking distributing section 92, a nearby userdistributing section 94, and a user information distributing section 96.These function components are implemented by executing the programaccording to the embodiment of the present invention on the userposition management server 12, which is a computer. This program may bedownloaded from another computer via the computer communication network10, or may be stored in a computer-readable information storage mediumsuch as a CD-ROM or a DVD-ROM to be installed in the user positionmanagement server 12.

The position coordinate receiving section 80 receives a plurality ofposition coordinate sets and their calculating dates/times and gameperformance data (title IDs, viewing levels, and total play times) ofthe given number of game programs which are transmitted from theposition coordinate transmitting section 64 of each user terminal 16.

As illustrated in FIG. 13, the area-based title ID storage section 82stores an area ID, a time slot, and a given number of (for example,twenty) game performance data pieces in association with one another.The area ID is information for identifying (specifying) each mesh cellarea created by dividing a management subject area (for example, theentire area covering the Earth) into a plurality of mesh cells. The timeslot is information for identifying a time range having a given lengthof time (for example, six hours). Each game performance data piececontains a title ID, a viewing level, and a total play time. In otherwords, the area-based title ID storage section stores a given number of(for example, twenty) game performance data pieces in association withan area ID and a time slot. When receiving a plurality of positioncoordinate sets and their calculating dates/times and a given number ofgame performance data pieces from one user terminal 16, the positioncoordinate receiving section 80 derives for each received positioncoordinate set the area ID of an area that contains the positioncoordinate set. The position coordinate receiving section 80 alsoderives a time slot that contains the calculating date/time of thereceived position coordinate set. The position coordinate receivingsection 80 stores the game performance data received from the userterminal 16 in the area-based title ID storage section 82 in associationwith the derived area ID and the derived time slot. If the given numberof game performance data pieces are already stored in a relevant part ofthe area-based title ID storage section 82 at this point, the oldestgame performance data is deleted and the game performance data receivedthis time is stored instead.

As illustrated in FIG. 14, the area-based user ID storage section 84stores for each area ID a user ID, a position coordinate set, and acalculating date/time in association with one another. When receiving aplurality of position coordinate sets and their calculating dates/times,and the title IDs, viewing levels, and total play times of a givennumber of game programs from one user terminal 16, the positioncoordinate receiving section 80 derives for each received positioncoordinate set the area ID of an area that contains the positioncoordinate set. The user ID of the user who is using the user terminal16 and the received position coordinate set and calculating date/timeare stored in the area-based user ID storage section 84 in associationwith the derived area ID. A position coordinate set and its calculatingdate/time that has been stored longer than a given length of time (forexample, one week) is deleted from the area-based user ID storagesection 84.

As illustrated in FIG. 15, the user information storage section 86stores a user ID, a latest position coordinate set, a calculatingdate/time, and a given number of (for example, twenty) game performancedata pieces in association with one another. When receiving a pluralityof position coordinate sets and their calculating dates/times, and agiven number of game performance data pieces of one user terminal 16,the position coordinate receiving section 80 stores the positioncoordinate set obtained last and its calculating date/times and thereceived given number of game performance data pieces in the userinformation storage section 86 in association of the user ID of the userwho is using the user terminal 16.

The ranking generating section 88 generates the ranking of game titlesfor each area ID based on data stored in the area-based title ID storagesection 82. For instance, the number of game performance data piecesthat are stored on an area ID basis in the area-based title ID storagesection 82 in association with time slots within a given period of time(for example, past one month) are aggregated for each title ID, and topten titles are used to generate ranking. Data of this ranking includesthe total game performance data count (gross player count) of each titleID. Alternatively, viewing levels of game performance data that arestored on an area ID basis in the area-based title ID storage section 82in association with time slots within a given period of time (forexample, past one month) are averaged for each title ID, and top ten ofthe average values are used to generate ranking. Data of this ranking,too, includes the total game performance data count (gross playernumber) of each title ID. Data of the generated ranking is stored in thearea-based ranking storage section 90 in association with area IDs. Theranking distributing section 92 receives a set of position coordinatesfrom one user terminal 16, derives the area ID of an area that containsthe received position coordinate set, reads ranking that is stored inthe area-based ranking storage section 90 in association with thederived area ID, and returns the read ranking to the user terminal 16.

The nearby user distributing section 94 receives a set of coordinatesand the specification of a search area size from one user terminal 16,and sets as the search area a group of n×n (e.g., 1×1, 3×3, 5×5, 7×7,9×9, . . . , 25×25) areas that include the area containing the receivedposition coordinate set (for example, at the center point of the area).The variable n is determined by the specification of a search area sizereceived from the user terminal 16. The nearby user distributing section94 then reads every user ID and every position coordinate set that arestored in the area-based user ID storage section 84 in association withthe area ID of each area constituting the determined search area andreturns the read user ID and position coordinate set to the userterminal 16.

The user information distributing section 96 receives a user ID from oneuser terminal 16, and returns to the user terminal 16 the latestposition coordinate set, its calculation data, and a given number ofgame performance data pieces that are stored in the user informationstorage section 86 in association with the received user ID. When theuser of one user terminal 16 wishes to see on the touch screen 16 a thetitle of a game that is being played by a specific user, the userreceives this information from the user information distributing section96.

Processing executed by each user terminal 16 to display various screensis described. The other-user information providing section 70 of theuser terminal 16 includes, as described above, the travel route imagegenerating section 70 a, the friend image generating section 70 b, theranking image generating section 70 c, the radar image generatingsection 70 d, the title profile image generating section 70 e.

The travel route image generating section 70 a generates the travelroute image of FIG. 3. To generate the travel route image, the travelroute image generating section 70 a first reads position coordinate setsand their calculating dates/times out of the position coordinate storagesection 62. Subsequently, the travel route image generating section 70 aobtains for each position coordinate set an address letter string 20that corresponds to the position coordinate set. The address letterstring 20 may be stored in the user terminal 16 in advance inassociation with a range of position coordinates, or may be stored inthe information server 14 in the same manner. In the latter case, when aset of position coordinates is transmitted to the information server 14,the information server 14 reads an address letter string 20 associatedwith a range that contains the transmitted position coordinate set, andtransmits the read address letter string to the user terminal 16.Address letter strings 20 obtained in this manner are included alongwith calculating dates/times 22 in the travel route image in the orderof calculating date/times 22. Specifically, the calculating date/times22 and the address letter strings 20 are placed side by side in a waythat newer pairs of the calculating date/time 22 and the address letterstring 20 are placed at the top.

Next, the travel route image generating section 70 a transmits to theuser position management server 12 each position coordinate set storedin the position coordinate storage section 62 to request to generateranking. In response to the request, the ranking distributing section 92of the user position management server 12 derives the area ID of an areathat contains the received position coordinate set, reads ranking thatis stored in the area-based ranking storage section 90 in associationwith the derived area ID, and returns the read ranking to the userterminal 16. In the case where ranking associated with the same area IDhas already been received from the user position management server 12,the travel route image generating section 70 a compares the alreadyreceived ranking and the newly received ranking. A game title with arank that has increased most and a game title that has increased most invalues that are the basis of the ranking (the total game performancedata count, an average value of viewing levels, and the like) areincluded in the travel route image as hot titles (Reference Symbol 26).In the case where ranking associated with the same area ID has not beenreceived yet from the user position management server 12, a game titlethat has the highest rank in the currently received ranking is includedin the travel route image as a hot title.

The travel route image generating section 70 a transmits to the userposition management server 12 each position coordinate set stored in theposition coordinate storage section 62 and a size specification thatspecifies 1×1 area as the search area, thereby requesting the userposition management server 12 to search for nearby users. In response tothe request, the nearby user distributing section 94 of the userposition management server 12 derives the area ID of an area thatcontains the received position coordinate set, reads every user ID andevery position coordinate set that are stored in the area-based user IDstorage section 84 in association with the derived area ID, and returnsthe read user ID and position coordinate set to the user terminal 16.The travel route image generating section 70 a counts up the number ofuser IDs associated with each position coordinate set, and displayssmall images 24, the number of the small images 24 being according tothe counted number of user IDs, in the neighborhood of the calculatingdate/time concerning the position coordinate set. Further, the travelroute image generating section 70 a adds up the number of user IDsassociated with each position coordinate set, and displays the number inthe upper left area 30.

The user terminal 16 stores the user IDs of friends of its own user. Theuser terminal 16 receives information associated with the stored userIDs from the information server 14, and includes the information in theupper right area 32. When the user ID of a friend stored in the userterminal 16 is included among user IDs transmitted from the nearby userdistributing section 94 of the user position management server 12, theuser terminal 16 displays a message 28 below the address letter string20 related to the user ID. The travel route image generated in thismanner is displayed on the touch screen 16 a.

The friend image generating section 70 b generates the friend image ofFIG. 4. To generate the friend image, the friend image generatingsection 70 b reads friend user IDs stored in the user terminal 16, andreceives an avatar image 36 and latest information 34 associated withthe read user IDs from the information server 14. The latest information34 can be messages entered by friend users from their user terminals 16or other computers, and messages automatically generated by gameprograms that are executed on the user terminals 16 or other computersto indicate the game program execution state (the progress of the game,the skill level of players, and the like). The latest information isincluded in lower areas of entries in the friend image to complete thefriend image. The friend image generated in this manner is displayed bythe touch screen 16 a.

The ranking image generating section 70 c generates the ranking image ofFIG. 5. The ranking image generating section 70 c transmits a positioncoordinate set specified by the user to the user position managementserver 12, and receives ranking data from the ranking distributingsection 92. The ranking image is generated based on the thus receivedranking data. The generated ranking image is displayed by the touchscreen 16 a. The ranking image generating section 70 c may receiveranking data concerning a plurality of position coordinate sets (forexample, all position coordinate sets) stored in the position coordinatestorage section 62 to add up for each title the values that are thebasis of ranking generation (the total game performance data count, anaverage value of viewing levels, and the like), generate ranking fromthe sum, and generate and display the ranking image. This way, the userterminal 16 can display comprehensive ranking at a plurality ofpositions that the user has visited.

The title profile image generating section 70 e generates the titleprofile image of FIG. 6. The title profile image generating section 70 etransmits a title ID to the information server 14 and receives the titleimage 42 and information to be written in the information field 44.Based on the thus received information, the title profile image isgenerated. The generated title profile image is displayed by the touchscreen 16 a.

The radar image generating section 70 d generates the radar image ofFIG. 7. To generate the radar image, the radar image generating section70 d first transmits to the user position management server 12 a set ofcoordinates stored in the position coordinate storage section 62 that isspecified by the user and a size specification that specifies a 1×1 areaas the search area, and thereby requests a search for nearby users. Theradar image generating section 70 d then receives user IDs and sets ofposition coordinates that are sent from the nearby user distributingsection 94 of the user position management server in response to therequest. If the number of the received user IDs is less than ten, theradar image generating section 70 d transmits to the user positionmanagement server 12 the same position coordinate set along with a sizespecification that specifies 2×2 areas as the search area, to therebyrequest a search for nearby users again. The radar image generatingsection 70 d repeatedly requests the user position management server 12to execute a search for nearby users until the number of user IDs andposition coordinate sets received reaches ten or higher, or until thesize of the search area reaches M×M (M is a given number) areas. Theradar image is generated based on user IDs and position coordinate setsreceived from the nearby user distributing section 94 in this manner.Specifically, the radar image generating section 70 d reads out, fromthe user terminal 16, its own avatar image 50 stored in advance, andplaces the avatar image 50 at the center of the touch screen 16 a. Theradar image generating section 70 d calculates the difference betweenthe position coordinate set specified by the user and each positioncoordinate set received from the nearby user distributing section 94 todetermine the display positions of the avatar images 52 representingother users. In other words, the radar image generating section 70 ddisplays the avatar images 52 at positions that are based on thepositions of other user terminals 16 relative to the position of its ownuser terminal 16. The radar image generating section 70 d alsocalculates the sum of gross player counts (the sum of gross playercounts of all game titles) which are received from the rankingdistributing section 92 when the travel route image is generated, andplaces a number of small images 54 that is determined by the calculatedsum in the radar image at random. The radar image generated in thismanner, too, is displayed by the touch screen 16 a.

The item communication section 72 exchanges data such as an item used ina game program. The application executing section 66 generates an itemwhen a game program is executed, and stores identification informationof this item (an item ID) in the game performance storage section 68.Once an item ID is stored in the game performance storage section 68 inthis manner, the item communication section 72 transmits the item ID tothe user position management server 12 along with a relevant positioncoordinate set stored in the position coordinate storage section 62. Theuser position management server 12 stores the item ID and a relevantuser ID in association with the area IDs of areas that contain theposition coordinate set. The uploading of an item ID is completed inthis manner.

The item communication section 72 also performs processing of receivingan item ID that has been uploaded from another user. In this case, theitem communication section 72 transmits one of position coordinate setsstored in the position coordinate storage section 62 to the userposition management server 12. The user position management server 12returns an item ID and a user ID that are stored in association with thearea ID of an area containing the received position coordinate set. Theitem communication section 72 may store every item ID received in thismanner in the game performance storage section 68 to provide itemsidentified by the stored item IDs for use in game programs.Alternatively, the item communication section 72 may calculate thedegree of compatibility between its own user ID and a user ID receivedalong with an item ID to store the item ID in the game performancestorage section 68 only when the calculated degree of compatibility isequal to or larger than a given value and to provide an item identifiedby the stored item ID for use in a game program.

According to the communication system described above, a user can beaware of the presence of other users living in the same area withoutusing short-distance wireless communication.

In addition, the trail of positions calculated by the positioning unit16 b can be displayed in a manner easy for the user to comprehendwithout a map displayed on the touch screen 16 a.

The present invention is not limited to the embodiment described above,and various modifications can be made to the invention. For instance, inthe description given above, the area-based user ID storage section 84accumulates the user IDs of users who have obtained position coordinatesinside areas identified by their respective area IDs through positioningwithin a given period of time (for example, one week) and uploaded theposition coordinates to the user position management server 12. When theuser terminal 16 transmits position coordinates to the user positionmanagement server 12, the nearby user distributing section 94 identifiesthe area ID of an area that contains the received position coordinatesand returns a user ID and a position coordinate set that are stored inthe area-based user ID storage section 84 in association with theidentified area ID. The user terminal 16 uses the returned informationto generate the radar image and display a message in the travel routeimage. In short, in the example described above, information about theuser terminals 16 that have calculated positions in the same area bypositioning within a given period of time (for example, one week) isprovided from the user position management server 12.

In a modification example, on the other hand, the nearby userdistributing section 94 returns a calculating date/time in addition to auser ID and a position coordinate set that are stored in associationwith the identified area ID. In other words, the nearby userdistributing section 94 returns a user ID, a position coordination set,and a calculating date/time in combination. The user terminal 16 reads acalculating date/time of each position coordinate set out of theposition coordinate storage section 62 to select a calculating date/timereturned from the nearby user distributing section 94 that differs fromone of the read calculating dates/times by a given length of time orless, and displays information related to a returned combination thatincludes this calculating date/time. For instance, the user terminal 16receives from the information server 14 information (e.g., latestinformation 34) about a user who is identified by the user ID includedin the selected combination to display the information, and displays theavatar image 52 that represents this user ID in the radar image.Alternatively, if the user ID included in the selected combination is afriend user ID stored in advance, the user terminal 16 may display amessage 28. This enables the user terminal 16 to display on the touchscreen 16 a information about other user terminals 16 that haveperformed positioning inside the same area within a given length of timefrom the time of its own positioning. The user terminal 16 may alsocalculate the difference between a stored calculating date/time and areturned calculating date/time and the difference between a storedposition coordinate set and a returned position coordinate set to selecta returned combination whose calculating date/time differs from a storedcalculating date/time by a given length of time or less and whoseposition coordinate set differs from a stored position coordinate set bya given distance or less, and to display information about the selectedcombination. This way, the user terminal 16 can display on the touchscreen 16 a information about other user terminals 16 that are deducedto have been close in time and space both.

In another modification example, when the user terminal 16 transmits aset of position coordinates to the user position management server 12,the nearby user distributing section 94 identifies the area ID of anarea that contains the received position coordinates and reads acombination of a user ID and a position coordinate set that is stored inthe area-based user ID storage section 84 in association with theidentified area ID. The nearby user distributing section 94 selects aread combination whose position coordinate set differs from the positioncoordinate set transmitted from the user terminal 16 by a given distanceor less. The nearby user distributing section returns the selectedcombination to the user terminal 16. Based on the returned information,the user terminal 16 generates the radar image and displays a message onthe travel route image. This way, the user terminal 16 can display onthe touch screen 16 a only information about other user terminals 16that have performed positioning within a given distance from itself.

In still another modification example, the user terminal 16 transmits aset of position coordinates and its calculating date/time to the userposition management server 12. The nearby user distributing section 94identifies the area ID of an area that contains the received positioncoordinates, and reads a combination of a user ID, a position coordinateset, and a calculating date/time that is stored in the area-based userID storage section 84 in association with the identified area ID. Thenearby user distributing section 94 selects a read combination whosecalculating date/time differs from the calculating date/time transmittedfrom the user terminal 16 by a given length of time or less, and returnsthe selected combination to the user terminal 16. Alternatively, thenearby user distributing section 94 selects a combination whosecalculating date/time differs from the received calculating time by agiven length of time or less and whose position coordinate set differsfrom the received position coordinate set by a given distance or less,and returns the selected combination to the user terminal 16. Based onthe returned information, the user terminal 16 generates the radar imageand displays a message on the travel route image. This way, the userterminal 16 can display on the touch screen 16 a information about otheruser terminals 16 that are deduced to have been close in time and spaceboth.

In yet still another modification example, the area-based user IDstorage section 84 stores, for each combination of an area ID and itsassociated time slot, a user ID, a position coordinate set, and acalculating date/time that are associated with the user terminal 16 thathas calculated, by positioning, a position inside an area identified bythe area ID at a date/time within the time slot. The user terminal 16transmits a set of position coordinates and its calculating date/time tothe user position management server 12. The nearby user distributingsection 94 identifies the area ID of an area that contains the receivedposition coordinates, and identifies a time slot that contains thereceived calculating date/time. The nearby user distributing section 94returns a combination of a user ID, a position coordinate set, and acalculating date/time that is stored in the area-based user ID storagesection 84 in association with the identified area ID and the identifiedtime slot. Based on the returned information, the user terminal 16generates the radar image and displays a message on the travel routeimage. This way, the user terminal 16 can display on the touch screen 16a information about other user terminals 16 that are deduced to havebeen close in time and space both.

What is claimed is:
 1. A user terminal, comprising: a user terminalposition determination unit that determines a position of the userterminal in a geographic area among a plurality of other user terminals;a transmitting unit that transmits the position of the user terminal toa server, where the server also receives respective positions of theplurality of other user terminals and, in response, selects one or moreof the plurality of other user terminals based on the position of theuser terminal and the respective positions of the plurality of otheruser terminals; a receiving unit that receives information from theserver, including indicia related to the selected one or more of theplurality of other user terminals, the indicia including an indicationas to a respective privacy setting of each of the selected one or moreof the plurality of other user terminals; and a display unit thatdisplays the indicia related to the selected one or more of theplurality of other user terminals, wherein: as to each of the selectedone or more of the plurality of other user terminals, when therespective privacy setting thereof indicates a desire for privacy theindicia indicates a presence of the respective selected one of theplurality of other user terminals, but does not indicate the position ofthe respective selected one of the plurality of other user terminals;and a number of the indicia indicating a presence but not a position isdetermined by a calculated sum including both a number of the selectedone or more of the plurality of other user terminals having a privacysetting indicating a desire for privacy and a number of the selected oneor more of the plurality of other user terminals having a privacysetting not indicating a desire for privacy.
 2. The user terminalaccording to claim 1, wherein the display unit displays the position ofthe user terminal and one or more positions of the selected one or moreof the plurality of other user terminals.
 3. The user terminal accordingto claim 1, wherein the display unit displays: the position of the userterminal via a graphic specific to the user terminal; the existence ofany of the selected one or more of the plurality of other user terminalsvia a first graphic, when the respective privacy settings thereofindicate a desire for privacy; the existence of any of the selected oneor more of the plurality of other user terminals via a second graphic,when the respective privacy settings thereof do not indicate a desirefor privacy.
 4. The user terminal according to claim 3, wherein therelative positions on the display of the graphic specific to the userterminal and the respective first graphics do not provide any actualgeographic location information of the selected one or more of theplurality of other user terminals.
 5. The user terminal according toclaim 3, wherein the relative positions on the display of the graphicspecific to the user terminal and the respective second graphics provideactual geographic location information of the selected one or more ofthe plurality of other user terminals.
 6. The user terminal according toclaim 1, further comprising: a position storage unit; and a calculatingunit that repeatedly calculates a position of the user terminal, andstores the calculated position repeatedly into the position storageunit, wherein the transmitting unit transmits the calculated positionsthat are stored in the position storage unit to the server.
 7. The userterminal according to claim 3, wherein each of the plurality of otheruser terminals comprises a position storage unit and a calculating unitthat repeatedly calculates a position thereof, stores the calculatedposition repeatedly into the position storage unit, and transmits thecalculated positions to the server.
 8. The user terminal according toclaim 1, wherein the information includes data indicating one or moreapplication programs that are contained and/or used by the selected oneor more of the plurality of other user terminals.
 9. A method,comprising: determining, within a user terminal, a position of the userterminal in a geographic area among a plurality of other user terminals;transmitting the position of the user terminal to a server, where theserver also receives respective positions of the plurality of other userterminals and, in response, selects one or more of the plurality ofother user terminals based on the position of the user terminal and therespective positions of the plurality of other user terminals; receivinginformation from the server, including indicia related to the selectedone or more of the plurality of other user terminals, the indiciaincluding an indication as to a respective privacy setting of each ofthe selected one or more of the plurality of other user terminals; anddisplaying the indicia related to the selected one or more of theplurality of other user terminals, wherein: as to each of the selectedone or more of the plurality of other user terminals, when therespective privacy setting thereof indicates a desire for privacy theindicia indicates a presence of the respective selected one of theplurality of other user terminals, but does not indicate the position ofthe respective selected one of the plurality of other user terminals;and a number of the indicia indicating a presence but not a position isdetermined by a calculated sum including both a number of the selectedone or more of the plurality of other user terminals having a privacysetting indicating a desire for privacy and a number of the selected oneor more of the plurality of other user terminals having a privacysetting not indicating a desire for privacy.
 10. The method according toclaim 9, further comprising: displaying the position of the userterminal and one or more positions of the selected one or more of theplurality of other user terminals.
 11. The method according to claim 9,wherein the step of displaying includes: displaying the position of theuser terminal via a graphic specific to the user terminal; displayingthe existence of any of the selected one or more of the plurality ofother user terminals via a first graphic, when the respective privacysettings thereof indicate a desire for privacy; displaying the existenceof any of the selected one or more of the plurality of other userterminals via a second graphic, when the respective privacy settingsthereof do not indicate a desire for privacy.
 12. The method accordingto claim 11, wherein the relative displayed positions of the graphicspecific to the user terminal and the respective first graphics do notprovide any actual geographic location information of the selected oneor more of the plurality of other user terminals.
 13. The methodaccording to claim 11, wherein the relative displayed positions of thegraphic specific to the user terminal and the respective second graphicsprovide actual geographic location information of the selected one ormore of the plurality of other user terminals.
 14. A non-transitory,computer readable storage medium containing a set of instructions which,when executed by a processor of a computing system cause the computingsystem to carry out the actions of: determining, within a user terminal,a position of the user terminal in a geographic area among a pluralityof other user terminals; transmitting the position of the user terminalto a server, where the server also receives respective positions of theplurality of other user terminals and, in response, selects one or moreof the plurality of other user terminals based on the position of theuser terminal and the respective positions of the plurality of otheruser terminals; receiving information from the server, including indiciarelated to the selected one or more of the plurality of other userterminals, the indicia including an indication as to a respectiveprivacy setting of each of the selected one or more of the plurality ofother user terminals; and displaying the indicia related to the selectedone or more of the plurality of other user terminals, wherein: as toeach of the selected one or more of the plurality of other userterminals, when the respective privacy setting thereof indicates adesire for privacy the indicia indicates a presence of the respectiveselected one of the plurality of other user terminals, but does notindicate the position of the respective selected one of the plurality ofother user terminals; and a number of the indicia indicating a presencebut not a position is determined by a calculated sum including both anumber of the selected one or more of the plurality of other userterminals having a privacy setting indicating a desire for privacy and anumber of the selected one or more of the plurality of other userterminals having a privacy setting not indicating a desire for privacy.15. The non-transitory, computer readable storage medium according toclaim 14, further comprising: displaying the position of the userterminal and one or more positions of the selected one or more of theplurality of other user terminals.
 16. The non-transitory, computerreadable storage medium according to claim 14, wherein the step ofdisplaying includes: displaying the position of the user terminal via agraphic specific to the user terminal; displaying the existence of anyof the selected one or more of the plurality of other user terminals viaa first graphic, when the respective privacy settings thereof indicate adesire for privacy; displaying the existence of any of the selected oneor more of the plurality of other user terminals via a second graphic,when the respective privacy settings thereof do not indicate a desirefor privacy.
 17. The non-transitory, computer readable storage mediumaccording to claim 15, wherein the relative displayed positions of thegraphic specific to the user terminal and the respective first graphicsdo not provide any actual geographic location information of theselected one or more of the plurality of other user terminals.
 18. Thenon-transitory, computer readable storage medium according to claim 15,wherein the relative displayed positions of the graphic specific to theuser terminal and the respective second graphics provide actualgeographic location information of the selected one or more of theplurality of other user terminals.